天池离线赛

您所在的位置:网站首页 经典推荐算法wdl fm lr rf 天池离线赛

天池离线赛

2024-07-09 15:51| 来源: 网络整理| 查看: 265

移动推荐算法是阿里天池赛2015年赛题之一,题目以移动电商平台的真实用户-商品行为数据为基础来构建商品推荐模型。该题现已成为新人入门的经典演练对象,博主也希望基于该题场景,加深对机器学习相关知识的理解,积累实践经验。关于题目回顾与数据初探,可参考:天池离线赛 - 移动推荐算法(一):题目与数据解析,本文讨论如何基于模型来进行预测,测试的模型包括逻辑回归(LR)、随机森林(RF)、梯度迭代提升树(GBDT)。

基于模型的预测

(注:这里的实现基于 python 的 pandas、sklearn 等工具包。相关程序可参考My GitHub - model-based predication)

面向模型的数据预处理

经过天池离线赛 - 移动推荐算法(三):特征构建之后,在对特征数据样本套用模型进行分类预测之前,还需要根据具体所采用的模型对数据进行二次预处理,下面讨论其中重要的几点:

正负样本失衡问题

经过特征构建所得的数据集正负样本比例约为 1:1200,数据严重失衡,易导致模型训练失效。在这里,我们可通过下采样和基于 f1_score 的评价标准来应对此问题。

若考虑对训练集中的负样本进行下采样。为避免随机采样的特征空间覆盖性不足,先对负样本进行k-means聚类(参考Sergey Feldman所提方法(2)),然后在每个聚类上采用subsample来获得全面的负样本采样,最后与正样本组成较为平衡的训练集。

相关程序参考这里:基于k-means数据预处理 - python sklearn。

缺失值问题

在所构建的特征中,一些特征存在缺失值(如xx_diff_hours),这里,采用移除缺失值特征的数据集进行LR模型的训练,采用将缺失值赋值为-1的训练集进行RF/GBDT模型的训练。

归一化问题

在进行k-means和LR时,需要对不同度量尺度的特征进行归一化处理,这里我们采用sklearn.preprocessing.StandardScaler()实现。

逻辑回归

参考程序 - lr-based prediction

逻辑回归(logistic regression,简称LR)是一种线性回归模型,另一种贴切的名称是“对数几率回归”,该模型采用对数几率函数逼近预测结果。这里采用sklearn.linear_model.LogisticRegression来训练模型。

由于LR模型对正负样本平衡十分敏感,所以在k-means的基础上采用下采样,通过参数调节选取最优的正负样本比(N/P_ratio),下图是LR训练时的 f1_score 随 N/P_ratio 变化示意图:



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3